home *** CD-ROM | disk | FTP | other *** search
- //: C09:Noinsitu.cpp
- // From Thinking in C++, 2nd Edition
- // Available at http://www.BruceEckel.com
- // (c) Bruce Eckel 1999
- // Copyright notice in Copyright.txt
- // Removing in situ functions
-
- class Rectangle {
- int width, height;
- public:
- Rectangle(int w = 0, int h = 0);
- int getWidth() const;
- void setWidth(int w);
- int getHeight() const;
- void setHeight(int h);
- };
-
- inline Rectangle::Rectangle(int w, int h)
- : width(w), height(h) {
- }
-
- inline int Rectangle::getWidth() const {
- return width;
- }
-
- inline void Rectangle::setWidth(int w) {
- width = w;
- }
-
- inline int Rectangle::getHeight() const {
- return height;
- }
-
- inline void Rectangle::setHeight(int h) {
- height = h;
- }
-
- int main() {
- Rectangle r(19, 47);
- // Transpose width & height:
- int iHeight = r.getHeight();
- r.setHeight(r.getWidth());
- r.setWidth(iHeight);
- } ///:~
-